import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] nums = new int[n];
        int[] sum = new int[n+1];
        for (int i = 0; i < n; i++) {
            nums[i] = scanner.nextInt();
            sum[i+1] = sum[i] + nums[i];
        }
        //[-1,2,1]
        //[0 -1 1 2]
        int ret = Integer.MIN_VALUE;
        int i = 0, j = 0;
        while(j<=n) {
            ret = Math.max(ret,sum[j] - sum[i]);
            if(nums[i+1] < nums[i]) {
                i++;
            }
            ret = Math.max(ret,sum[j] - sum[i]);
            j++;
        }

        System.out.println(ret);
    }
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
//        int[] nums = new int[n];
//        int[] sum = new int[n+1];
//        for (int i = 0; i < n; i++) {
//            nums[i] = scanner.nextInt();
//            sum[i+1] = sum[i] + nums[i];
//        }
//        //[-1,2,1]
//        //[0 -1 1 2]
//        int ret = Integer.MIN_VALUE;
//        for (int i = 0; i < n ; i++) {
//            for(int j = i+1; j<=n; j++) {
//                ret = Math.max(ret,sum[j] - sum[i]);
//            }
//        }
//        System.out.println(ret);
//    }
}

//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        String str = scanner.nextLine();
//        String ch = scanner.nextLine();
//        int count = 0;
//        for(int i = 0; i<=str.length(); i++) {
//            StringBuffer tmp = new StringBuffer(str);
//            if(check(tmp.insert(i,ch).toString())) {
//                count++;
//            }
//        }
//        System.out.println(count);
//    }
//    public static boolean check(String str) {
//        for(int i = 0, j = str.length()-1; i<j; i++,j--) {
//            if(str.charAt(i) != str.charAt(j)) {
//                return false;
//            }
//        }
//        return true;
//    }
//}
